package com.umpay.dto.memberMgr.req;
import java.sql.Timestamp;
import org.hibernate.validator.constraints.NotEmpty;
import com.umpay.annotation.Pattern;
import com.umpay.dto.memberMgr.CommonParameters;

/**
***********************************************************
* @ClassName: SaveBankCardInfReq
* @Description: 保存银行卡信息请求dto
* @author lile
* @date 2018年8月27日 下午2:33:39
* @version 1.0 
*
* Modification History:
* Date         Author          Version            Description
*---------------------------------------------------------*
* 2018年8月27日     lile           v1.0.0               修改原因
************************************************************
*/ 
public class SaveBankCardInfReq extends CommonParameters{
	@NotEmpty
	@Pattern
	private String bankAccount; //3des加密
	
	@NotEmpty
	@Pattern
	private String mobileId; //银行端预留手机号

	private String contactsMobile; //联系人手机号
	
	@NotEmpty
	@Pattern
	private String bankCardType; //银行卡类型 0-借记卡，1-贷记卡，2-准贷记卡，3-预付卡
	
	@NotEmpty(message="accountPro不能为空")
	@Pattern
	private String accountPro; // 01：个人  02：企业
	
	@Pattern
	private String identityCode; //证件号码（银行端预留） 对私时使用

	
	@Pattern
	private String identityType; //证件类型  1 身份证2 护照3 警官证 	4 港澳台同胞回乡证5 户口本 6 文官证8 军官证9 其它  对私时使用
	
	@NotEmpty(message="certType不能为空")
	@Pattern
	private String certType;//证照类型 1-身份证 2-营业执照号
	
	@NotEmpty(message="userName不能为空")
	@Pattern
	private String userName; //账户姓名（银行端预留）
	
	@NotEmpty(message="binBankId不能为空")
	@Pattern
	private String binBankId; //发卡行ID
	
	@NotEmpty(message="binBankName不能为空")
	@Pattern
	private String binBankName; //发卡行名称
	
	@NotEmpty(message="lastFourCardId不能为空")
	@Pattern
	private String lastFourCardId; //卡号后四位
	
	@NotEmpty(message="realNameState不能为空")
	@Pattern
	private String realNameState; //实名验证状态  0.已验证通过 1.未验证通过
	
	@Pattern
	private String holdVerifyState; //持有性验证状态  0.已验证通过 1.未验证通过
	
	@Pattern
	private String realNameChnlid; //实名认证渠道编号
	
	@Pattern
	private String holdVerifyChnlid; //持有性认证渠道编号
	
	private Timestamp perrTime; //解锁时间
	
	@Pattern
	@NotEmpty
	private String bankAccountName; //开户个人/单位名称    对公账户的开户单位名称
	
	@Pattern
	private String bankProvName; //开户行所在省
	
	@Pattern
	private String bankAreaName; //开户行所在市
	
	@Pattern
	private String bankBranchName; //开户行支行全称
	
	@Pattern
	private String inpbCode; //转入账户联行号
	
	@Pattern
	private String regorigin; //注册渠道
	
	private String modUser; //修改人
	
	private String instUser; //录入人
	
	@Pattern
	private String gateId; //银行简码

	public String getBankAccount() {
		return bankAccount;
	}

	public void setBankAccount(String bankAccount) {
		this.bankAccount = bankAccount;
	}

	public String getMobileId() {
		return mobileId;
	}

	public void setMobileId(String mobileId) {
		this.mobileId = mobileId;
	}

	public String getContactsMobile() {
		return contactsMobile;
	}

	public void setContactsMobile(String contactsMobile) {
		this.contactsMobile = contactsMobile;
	}

	public String getBankCardType() {
		return bankCardType;
	}

	public void setBankCardType(String bankCardType) {
		this.bankCardType = bankCardType;
	}

	public String getAccountPro() {
		return accountPro;
	}

	public void setAccountPro(String accountPro) {
		this.accountPro = accountPro;
	}

	public String getIdentityCode() {
		return identityCode;
	}

	public void setIdentityCode(String identityCode) {
		this.identityCode = identityCode;
	}

	public String getIdentityType() {
		return identityType;
	}

	public void setIdentityType(String identityType) {
		this.identityType = identityType;
	}

	public String getCertType() {
		return certType;
	}

	public void setCertType(String certType) {
		this.certType = certType;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getBinBankId() {
		return binBankId;
	}

	public void setBinBankId(String binBankId) {
		this.binBankId = binBankId;
	}

	public String getBinBankName() {
		return binBankName;
	}

	public void setBinBankName(String binBankName) {
		this.binBankName = binBankName;
	}

	public String getLastFourCardId() {
		return lastFourCardId;
	}

	public void setLastFourCardId(String lastFourCardId) {
		this.lastFourCardId = lastFourCardId;
	}

	public String getRealNameState() {
		return realNameState;
	}

	public void setRealNameState(String realNameState) {
		this.realNameState = realNameState;
	}

	public String getHoldVerifyState() {
		return holdVerifyState;
	}

	public void setHoldVerifyState(String holdVerifyState) {
		this.holdVerifyState = holdVerifyState;
	}

	public String getRealNameChnlid() {
		return realNameChnlid;
	}

	public void setRealNameChnlid(String realNameChnlid) {
		this.realNameChnlid = realNameChnlid;
	}

	public String getHoldVerifyChnlid() {
		return holdVerifyChnlid;
	}

	public void setHoldVerifyChnlid(String holdVerifyChnlid) {
		this.holdVerifyChnlid = holdVerifyChnlid;
	}

	public Timestamp getPerrTime() {
		return perrTime;
	}

	public void setPerrTime(Timestamp perrTime) {
		this.perrTime = perrTime;
	}

	public String getBankAccountName() {
		return bankAccountName;
	}

	public void setBankAccountName(String bankAccountName) {
		this.bankAccountName = bankAccountName;
	}

	public String getBankProvName() {
		return bankProvName;
	}

	public void setBankProvName(String bankProvName) {
		this.bankProvName = bankProvName;
	}

	public String getBankAreaName() {
		return bankAreaName;
	}

	public void setBankAreaName(String bankAreaName) {
		this.bankAreaName = bankAreaName;
	}

	public String getBankBranchName() {
		return bankBranchName;
	}

	public void setBankBranchName(String bankBranchName) {
		this.bankBranchName = bankBranchName;
	}

	public String getInpbCode() {
		return inpbCode;
	}

	public void setInpbCode(String inpbCode) {
		this.inpbCode = inpbCode;
	}

	public String getRegorigin() {
		return regorigin;
	}

	public void setRegorigin(String regorigin) {
		this.regorigin = regorigin;
	}

	public String getModUser() {
		return modUser;
	}

	public void setModUser(String modUser) {
		this.modUser = modUser;
	}

	public String getInstUser() {
		return instUser;
	}

	public void setInstUser(String instUser) {
		this.instUser = instUser;
	}

	public String getGateId() {
		return gateId;
	}

	public void setGateId(String gateId) {
		this.gateId = gateId;
	}

	@Override
	public String toString() {
		StringBuilder builder = new StringBuilder();
		builder.append("SaveBankCardInfReq [bankAccount=");
		builder.append(bankAccount);
		builder.append(", mobileId=");
		builder.append(mobileId);
		builder.append(", contactsMobile=");
		builder.append(contactsMobile);
		builder.append(", bankCardType=");
		builder.append(bankCardType);
		builder.append(", accountPro=");
		builder.append(accountPro);
		builder.append(", identityCode=");
		builder.append(identityCode);
		builder.append(", identityType=");
		builder.append(identityType);
		builder.append(", certType=");
		builder.append(certType);
		builder.append(", userName=");
		builder.append(userName);
		builder.append(", binBankId=");
		builder.append(binBankId);
		builder.append(", binBankName=");
		builder.append(binBankName);
		builder.append(", lastFourCardId=");
		builder.append(lastFourCardId);
		builder.append(", realNameState=");
		builder.append(realNameState);
		builder.append(", holdVerifyState=");
		builder.append(holdVerifyState);
		builder.append(", realNameChnlid=");
		builder.append(realNameChnlid);
		builder.append(", holdVerifyChnlid=");
		builder.append(holdVerifyChnlid);
		builder.append(", perrTime=");
		builder.append(perrTime);
		builder.append(", bankAccountName=");
		builder.append(bankAccountName);
		builder.append(", bankProvName=");
		builder.append(bankProvName);
		builder.append(", bankAreaName=");
		builder.append(bankAreaName);
		builder.append(", bankBranchName=");
		builder.append(bankBranchName);
		builder.append(", inpbCode=");
		builder.append(inpbCode);
		builder.append(", regorigin=");
		builder.append(regorigin);
		builder.append(", modUser=");
		builder.append(modUser);
		builder.append(", instUser=");
		builder.append(instUser);
		builder.append(", gateId=");
		builder.append(gateId);
		builder.append("]");
		return builder.toString();
	}
	
	
	
	

}
